package ast;

import java.util.ArrayList;

import logic.Var;


public class ExpInicio implements Expresion {


	/**
	 * ATTRIBUTES
	 */
	// lista de variables usadas en la funcion
	ArrayList<Var> 	_Vars;
	// id de la pestanna de la funcion
	int				_IdPestanna;
	
	/**
	 * Constructor
	 * @param pIdPestanna
	 * @param pVars
	 */
	public ExpInicio( int pIdPestanna, ArrayList<Var> pVars ) {
		_IdPestanna 	= pIdPestanna;
		_Vars 			= pVars;
	}
	
	/**
	 * Codigo asociado a esta expresion
	 */
	@Override
	public String GenerarCodigo( ) {
		String code = new String();
		String strIdPestanna = String.valueOf(_IdPestanna);
		code += ConstCode.FUNCTION + strIdPestanna + ConstCode.PARAM_FUNCTION + ConstCode.OPEN_CORCHET;
		// instanciar variables
		for( int cnt=0; cnt < _Vars.size(); cnt++ ){
			code += ConstCode.INT + ConstCode.VAR + String.valueOf( _Vars.get(cnt).getId() );
			code += ConstCode.ASIG + _Vars.get(cnt).get_Valor() + ConstCode.FIN_LINE;
		}
		/*
		 function_Id( flujo ){
		 	int var_id1 = value;
		 	int var_id2 = value;
		 	int var_id3 = value;
		 */
		return code;
	}

	
}
